package com.wei.czz.framework.rabbitMQ.message.blog;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.wei.czz.common.tool.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2022-02-25 23:20:18
 * className: BlogOperationMessage 用户操作博客消息类
 * version: 1.0
 * description:
 *  `@JsonInclude(JsonInclude.Include.NON_EMPTY)`：接口返回对象时，如果某个字段值为空，序列化不操作该字段
 */
@Getter
@Setter
@Accessors(chain = true)
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class BlogOperationMessage extends BaseEntity {

    /**
     * 博客id
     */
    private Long blogId;
    /**
     * 操作的用户id
     */
    private Long updateUserId;
    /**
     * 操作类型[0-用户浏览 1-用户点赞/取消点赞 2-用户收藏/取消收藏 3-用户评论]
     */
    private Integer optType;
    /**
     * optType属性对应数据库表字段值变化大小
     */
    private Integer num;
    /**
     * 当optType值为3时，消息可以携带评论的区块id
     */
    private Long blockId;
    /**
     * 当optType值为1或2时，且是取消点赞或者取消收藏是，消息可以携带点赞或者收藏的操作时间
     */
    private Date optTime;

}
